Skip to content

fix: apply protocol-matched User-Agent for subscription fetches#5

Merged
bitxwave merged 1 commit intomainfrom
fix/subscription-user-agent
May 1, 2026
Merged

fix: apply protocol-matched User-Agent for subscription fetches#5
bitxwave merged 1 commit intomainfrom
fix/subscription-user-agent

Conversation

@bitxwave
Copy link
Copy Markdown
Owner

@bitxwave bitxwave commented May 1, 2026

Subscription panels (v2board/xboard/sspanel) route responses by UA. The previous client sent no UA (default reqwest/0.12.x) so these panels rejected the request, surfacing as "address unreachable" even though the host was reachable (sing-box SFM with a proper UA worked fine).

  • loader: apply user_agent to reqwest client; derive per-protocol default (sing-box / mihomo / v2rayN) from source_type or flag
  • config: default user_agent to empty so the per-protocol default kicks in; non-empty config value still wins as an explicit override

Subscription panels (v2board/xboard/sspanel) route responses by UA.
The previous client sent no UA (default reqwest/0.12.x) so these panels
rejected the request, surfacing as "address unreachable" even though
the host was reachable (sing-box SFM with a proper UA worked fine).

- loader: apply user_agent to reqwest client; derive per-protocol
  default (sing-box / mihomo / v2rayN) from source_type or flag
- config: default user_agent to empty so the per-protocol default kicks
  in; non-empty config value still wins as an explicit override

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@bitxwave bitxwave merged commit 2da7372 into main May 1, 2026
7 checks passed
@bitxwave bitxwave deleted the fix/subscription-user-agent branch May 1, 2026 08:32
bitxwave added a commit that referenced this pull request May 1, 2026
Subscription panels (v2board/xboard/sspanel) route responses by UA.
The previous client sent no UA (default reqwest/0.12.x) so these panels
rejected the request, surfacing as "address unreachable" even though
the host was reachable (sing-box SFM with a proper UA worked fine).

- loader: apply user_agent to reqwest client; derive per-protocol
  default (sing-box / mihomo / v2rayN) from source_type or flag
- config: default user_agent to empty so the per-protocol default kicks
  in; non-empty config value still wins as an explicit override
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant